<?php
	$admin_obj = new admin();
	$user_obj = new user();
	//action对应表
	$action_ary = array(
	'login'=>'admin_act_login',
	'out_login'=>'admin_act_out_login',
	'phone_login'=>'admin_act_phone_login',
	'add_admin'=>'admin_act_add_admin',
	'code' => 'admin_act_code',
	'update_admin'=>'admin_act_update_admin',
	'new_proxy'=>'admin_fun_new_proxy',
	'new_proxy_set'=>'admin_act_new_proxy_set',
	'update_admin_self'=>'admin_act_update_admin_self',
	'pwd_edit' => 'admin_act_pwd_edit',
	'add_module'=>'admin_act_add_module',
	'update_module'=>'admin_act_update_module',
	'add_group'=>'admin_act_add_group',
	'update_group'=>'admin_act_update_group',
	'update_state'=>'admin_act_update_state',
	'quit'=>'admin_act_quit',
	'module_sort' => 'admin_act_module_sort',
	'money_compare' => 'admin_act_money_compare',
	'phone_check' => 'admin_act_phone_check',
	'account_check' => 'admin_act_account_check',
	'pay' => 'admin_act_pay',
	'rechange' => 'admin_act_rechange',
	'unique_admin' => 'admin_act_unique_admin',
    'money_log'=>'admin_act_money_log',
	'admin_suggest' => 'admin_act_admin_suggest',
	'find_admin' => 'admin_act_find_admin',
	'dls_info' => 'admin_act_dls_info',  //得到一个代理商信息
	'wap_login'=>'admin_act_wap_login'
	);

	//执行函数
	if($action && ($fun = $action_ary[$action])){
		$fun();
	}
	/**
	* 管理员帐号唯一性检测
	*
	*/
	function admin_act_unique_admin(){
		global $admin_obj;
		$account = request('param');
		$s = $admin_obj->unique_admin($account);
		if($s){
			echo '该帐号已存在';
			exit;
		}else{
			echo 'y';
			exit;
		}
	}

	
	
	function admin_act_money_log(){
		global $admin_obj;
		
		//只有管理员能操作
		$cookie = admin_fun_cookie();
		$info=admin_fun_find_admin($cookie['id']);
		if(6!=$info['group']){
			return false;
		}
		
		$data['uid']=$id=request('id',false,true);
		$data['money']=$money=request('money');
		$data['code']=$code=request('code',false,true);
		if(empty($id) || !is_numeric($money) || $money<0 || empty($code) || $code<0){
			location_msg('请正确输入参数');
		}
		$data['comment']=$comment=request('comment');
		
		$res=$admin_obj->money_log($data);
		if($res){		
		   location_msg('充值成功');
		}
		
		location_msg('充值失败');
	}
	
	
	

	
	

	/**
	*  得到一个代理商信息
	* @author zhufu 2013-09-12
	*
	*/
	function admin_act_dls_info(){
		global $admin_obj;

		$id = request('id', false, true);
		$admin_info = $admin_obj->out_cookie();
		$rtn = array('state'=>false);
		if(!$admin_info || ($admin_info['group'] != 6 && $admin_info['group'] != 1 && $admin_info['group'] != 3)){
			$rtn['msg'] = 1415;
			echo_json($rtn);
		}
		$info = $admin_obj->out_find_admin($id);
		if($info['group'] != 7){
			$rtn['msg'] = 1420;
			echo_json($rtn);
		}
		$rtn = array('state'=>true,'info'=>$info);
		echo_json($rtn);
	}


	/**
	* 管理员列表感知
	* @author zhufu 2013-08-30
	*
	*/
	function admin_act_admin_suggest(){
		global $admin_obj;
		$page = request('page', false ,true, false, 1);
		$search['kws'] = request('kws');
		$list = $admin_obj->out_find_admin_list($groupid, $page, $search);

	}

	/**
	* 查找管理员
	*
	*/
	function admin_act_find_admin(){
		global $admin_obj;
		$groupid = request('admin_type',false,true);
		$kws = request('kws');
		$page = request('page', false, true, false, 1); //当前页
		$pagesize = request('pagesize', false, true, false, 10);    //每页显示的总数
		$search['kws']=$kws;
		$admin_info = $admin_obj->out_cookie();
		if($admin_info['group'] != 6 && $admin_info['group'] != 3  && $admin_info['id']&&$admin_info['group']!=1){
			$search['create_id'] = $admin_info['id'];
		}
		$result = $admin_obj->out_find_admin_list($groupid, $page, $search, $pagesize);
		if($result['rows']){
			foreach($result['rows'] as $k=>$v){
				$result['rows'][$k]['title'] = $v['name'];
				$result['rows'][$k]['uid'] = $v['id'];
			}
		}
		if($result){
			$rtn['state']=true;
			$rtn['flag']=1;
			$rtn['result']=$result;
			echo_json($rtn);
		}
		$rtn['state']=false;
		echo_json($rtn);
	}

	/**
	* 功能排序
	* @author <zhufu159239@163.com> 2012-08-28 11:17:53
	*
	*/
	function admin_act_module_sort(){
		global $admin_obj, $_site;
		$sort_ary = request('sort');    //排序表单数据
		$sort_c_ary = request('sort_c');    //排序表单数据,校验数据

		if($sort_ary){
			foreach($sort_ary as $k=>$v){
				if($v != $sort_c_ary[$k]){
					//与校验数据不符，则修改数据
					if(!$admin_obj->update_module($k, array('sort'=>$v))){
						location_msg(L('1003'));
					}
				}
			}
		}
		/*//操作成功，要清除缓存文件
		$filename = $_site->data_config['cache_key']['admin_module_all_level'];
		$mem_r = $admin_obj->memcache($filename, false);
		if(!$mem_r){
			location_msg(L('1012'));
		}*/
		location_msg(L('1004'));
	}




	/**
	* 管理员登陆
	*
	* @author  yufu 2012-7-19
	*/
	function admin_act_login(){
		global $admin_obj;

		//管理员登陆账号
		$account = request('account');
		//存一个管理员账号cookie
		set_cookie('a_account',$account);
		//管理员登陆密码
		$password = request('password');

		$code = request('admincode');
		//管理员类型0为代理商1为小区主
		$type = request('type',false,true);

		$rtn = array('success' => false, 'info' => '');
		//错误返回的页面地址
		$backurl = '/admin/login';
		if($type !== false){
			$backurl = '/admin/login?type='.$type;
		}
		//账户为空  或者密码为空
		if(is_null_str($account) || is_null_str($password)){
			location_msg('账户，密码未输入',$backurl);
		}
		//提交了验证码表单就要进行验证，兼容新的代理商登录页面没有验证码的情况
		if($code){
			//验证码输入错误
			$auth_code_object = new auth_code();
			if(!$auth_code_object->check($code)) {
				location_msg('验证码错误',$backurl);
			}
		}
		// 用户名 或密码输入错误
		if(!$row = $admin_obj->out_login($account, $password)){
			location_msg('账户，密码错误',$backurl);
		}
		//判定账户是否处于锁定状态
		if($row['state']!=1){
			location_msg('账户已锁定',$backurl);
		}

		$rtn['success'] = true;
		$rtn['row'] = $row;
		//  echo json_encode($rtn);
		location_msg(L('1403'),'/admin/index');
	}

	
	/**
	 * 负责人登陆
	 *
	 * @author  yufu 2012-7-19
	 */
	function admin_act_wap_login(){
		global $admin_obj;
	
		$rtn=array('state'=>false);

		//管理员登陆账号
		$account = trim(request('account'));
		//管理员登陆密码
		$password = trim(request('password'));

		//验证码
		/**
		$code = request('code');
		if(!$code){
			$rtn['msg']='请输入验证码';
			echo json_encode($rtn);exit;			
		}
		
		//验证码输入错误
		$auth_code_object = new auth_code();
		if(!$auth_code_object->check($code)){
			$rtn['msg']='验证码错误';
			echo json_encode($rtn);exit;								
		}		
        **/		
		
		//账户为空  或者密码为空
		if(is_null_str($account) || is_null_str($password)){
			$rtn['msg']='请输入账号和密码';
		    echo json_encode($rtn);exit;
		}

		// 用户名 或密码输入错误
		if(!$row = $admin_obj->out_login($account, $password)){
			$rtn['msg']='账号或密码不正确';
		    echo json_encode($rtn);exit;
		}
		
		//判定账户是否处于锁定状态
		if($row['state']!=1){			
			$rtn['msg']='账户已被锁定';
			echo json_encode($rtn);exit;			
		}
		
		//存一个管理员账号cookie
		set_cookie('a_account',$account);		
	
		$rtn['state'] = true;		
		$rtn['msg']='登录成功';
		$rtn['url']='/mobile/center';
		echo json_encode($rtn);exit;				
	}		
	
	
	/**
	* 代理商、小区住、商户外部登录
	* @author limin 2013-8-21
	*/
	function admin_act_out_login(){
		global $admin_obj,$user_obj;

		//账号
		$account = request('account');
		//密码
		$password = request('password');

		//管理员类型 0为代理商 1为小区主 2为商户
		$type = request('type',false,true,false,0);

		$rtn = array('state' => false, 'info' => '');

		//账户为空或者密码为空
		if(!$account||!$password){
			$rtn['msg']='1208'; //用户信息不完全
			echo_json($rtn);

		}
		//用户登录判断
		switch($type){
			case 0:
			case 1:
			$row = $admin_obj->out_login($account, $password);
			break;
			case 2:
			$row = $user_obj->out_login('company',$account, $password);
			break;
		}

		// 用户名或密码输入错误
		if(!$row){
			$rtn['msg']='1009';  //用户名或密码错误
			echo_json($rtn);
		}
		//判定账户是否处于锁定状态
		/*if($row['state']!=1&&$row['state_company']!=1){
			$rtn['msg']='2537';
			echo_json($rtn);
		} */

		$rtn['state'] = true;
		$rtn['info'] = $row;    //用户信息
		//用户类型
		switch($row['group']){
			 case 1:
			 case 7:
			 $rtn['type']=0;break;
			 case 2:
			 $rtn['type']=1;break;
			 default;
			 $rtn['type']=2;break;
		}
		echo_json($rtn);
	}

	/**
	* 手机页小区主、小区主管理员登陆
	*
	* @author  xiezhihui 2012-7-19
	*/
	function admin_act_phone_login(){
		global $admin_obj;

		//管理员登陆账号
		$account = request('account');
		//管理员登陆密码
		$password = request('password');
		//业务员账号
		$y_name = request('y_name');
		$y_phone = request('y_phone');
		$rtn = array('state' => false, 'info' => '');

		//账户为空  或者密码为空
		if(is_null_str($account) || is_null_str($password)){
			$rtn['msg'] = '1413';
			echo_json($rtn);
		}
		// 用户名 或密码输入错误
		//允许代理商登录开通商户页面，就不使用 GROUP 参数限制
		if(!$row = $admin_obj->out_login($account, $password)){
			$rtn['msg'] = '1414';
			echo_json($rtn);
		}
		//判定账户是否处于锁定状态
		if($row['state']!=1){
			$rtn['msg'] = '1404';
			echo_json($rtn);
		}

		if(!is_mobile($y_phone)){
			$rtn['msg'] = '1233';
			echo_json($rtn);
		}
		if(!$y_name){
			$rtn['msg'] = '1208';
			echo_json($rtn);
		}
		//登录成功后记录业务员的信息到COOKIE

		$cookie = array('y_name'=>$y_name,'y_phone'=>$y_phone,'account'=>$account);
		set_cookie('yewu', serialize($cookie));

		$rtn['state'] = true;
		$rtn['msg'] = "1403";
		//  echo json_encode($rtn);
		echo_json($rtn);
	}


	/**
	* 执行添加 管理员
	*
	* @author  yufu 2012-7-20
	*/
	function admin_act_add_admin(){
		global $admin_obj,$_site,$admin_proxy_config_obj;
		//添加的账户
		$account = request('account');
		//添加的密码 md5 加密
		$password = request('password');
		$repassword = request('repassword');
		//添加的姓名
		$name = request('name');
		//添加的电话
		$phone = request('phone', false, true);

		//添加的状态,默认为开启
		$state = request('state', false, true, false, 1);
		//添加的性别
		$sex = request('sex', false, true);
		//所属于权限组
		$group = request('group', false, true);
		$email = request('email', false, false,true);

		if(!$account || !$password || !$name){
			location_msg('参数信息不全');
		}
		if($password != $repassword){
			location_msg('两次密码不正确');
		}
		$password = md5($password);

		//判断电话是否正确
		if(!is_mobile($phone) && $phone){
			location_msg('请输入正确的电话');
		}
		//查询添加账户是否存在
		if($admin_obj->out_info_account($account)){
			location_msg('账户已存在');
		}
		$time = time();
		$data = compact('account','password','name','phone','state','sex','group','time','email');
		$master=request('master',false,true,false,0);
		if($master){
			$data['master']=$master;
		}

		if(!$aid=$admin_obj->add_admin($data)){
			location_msg('添加失败');
		}
				
		$jump_url=request('jump_url')?request('jump_url'):'/admin/admin_admin_list?sys_type='.$group;
		location_msg('添加成功', $jump_url);
	}

	/**
	* 获取最新当前地区的代理费
	*
	* @author  xiezhihui 2013-8-2
	* $area 区域
	*/
	function admin_fun_new_proxy($area){
		global $admin_proxy_config_obj;
		if($area==''){
			return false;
		}
		$proxy_config = $admin_proxy_config_obj->out_proxy_info_true($area);
		$proxy_price = $proxy_config['price'];	//当前地区的最新代理费配置
		return $proxy_price;
	}
	/**
	* ajax获取最新当前地区的代理费
	*
	* @author  xiezhihui 2013-8-2
	*
	*/
	function admin_act_new_proxy_set(){
		global $admin_proxy_config_obj;
		$area = request('area',false,true);
		if(!$area){
			$rtn['status'] = false;
			$rtn['msg'] = "没有获取到值";
			echo_json($rtn);
		}
		$proxy_config = $admin_proxy_config_obj->out_proxy_info_true($area);
		if($proxy_config){
			$rtn['status'] = true;
			$rtn['proxy_price'] = $proxy_config['price'];	//当前地区的最新代理费配置
			echo_json($rtn);
		}
	}
	/**
	* 修改 管理员的 信息
	*
	* @author  yufu 2012-7-20
	*/
	function admin_act_update_admin(){
		global $admin_obj,$_site;
		//添加的账户
		$id = request('id',false,true);
		$admin_info = $admin_obj->out_info_id($id);
		if(!$admin_info){
			location_msg('没有该帐号信息');
		}
		$account = request('account');
		//添加的密码 md5 加密
		$password = request('password');
		$repassword = request('repassword');
		//添加的姓名
		$name = request('name');
		//添加的电话
		$phone = request('phone', false, true);

		//添加的状态,默认为开启
		$state = request('state', false, true, false, 1);
		//添加的性别
		$sex = request('sex', false, true);
		//所属于权限组
		$group = request('group', false, true);
		$email = request('email', false, false,true);

		if(!$account || !$name){
			location_msg('参数信息不全');
		}
		if($password != $repassword){
			location_msg('两次密码不正确');
		}
		if($password){
			$password = md5($password);
		}else{
			unset($password);
		}

		//判断电话是否正确
		if(!is_mobile($phone) && $phone){
			location_msg('请输入正确的电话');
		}
		//查询添加账户是否存在
		if($admin_obj->out_info_account($account) && $admin_info['account']!=$account){
			location_msg('账户已存在');
		}

		$data = compact('id','account','password','name','phone','state','sex','group','time','email');
		$master=request('master',false,true,false,0);
		if($master){
			$data['master']=$master;
		}
		$data['showmap']=request('showmap',0);
		if(!$aid=$admin_obj->update_admin($data)){
			location_msg('修改失败');
		}		
		
		$jump_url=request('jump_url')?request('jump_url'):'/admin/admin_admin_list?sys_type='.$group;		
		location_msg('修改成功', $jump_url);
	}

	/**
	* 代理商续费
	* @author zhufu 2013-08-20
	*
	*/
	function admin_act_pay(){
		global $admin_obj, $_site, $admin_finance_obj;
		//修改的 账号id
		$id = request('id', false, true);
		if(!$id){
			location_msg("没有账户id");
		}
		//合同编号
		$contract_num=request('contract_num',false,true);
		//本次输入的实际金额
		$money_tmp = request('money', false, true);
		//获取输入年限
		$year = request('year', false, true);//获取最新缴费年限
		//修改权限组
		$group = request('group', false, true);

		if($money_tmp<1){
			//续费的金额不能小于 1
			location_msg("金额输入不能小于1");
		}
		//根据id获取修改用户的信息
		$result = admin_fun_find_admin($id);
		if($result['debt_money']==0){// 已结款 add by xiezhihui
			location_msg("款已结清，无需续费");
		}
		if($money_tmp>$result['debt_money']){
			location_msg('输入的结款金额不能大于未缴纳结款金额');
		}
		//网银截图
		$save_path = '/data/upload/pic/'.date('Y/m/d/');
		$image2 = $_site->_file()->upload_file('bankpic' , $_site->_root().$save_path);
		if(!$image2 || is_null_str($image2['folder']) || is_null_str($image2['name'])){
			location_msg('网银截图上传失败');
		}
		if($money_tmp<=$result['debt_money']){//可以结款
			$debt_money = $result['debt_money'] - $money_tmp;//计算出未交金额
		}
		$data = compact('id','password','name','phone','city','area', 'address', 'state','sex','group','end_time','time','debt_money','per_money','contract_img','contract_num');
		if($year){
			$data['contract_year']=$year;
		}
		if(!$admin_obj->update_admin($data)){
			location_msg('修改失败');
		}
		//修改成功之后如果是代理商则写代理商缴费日志
		//到账银行
		$log['bank'] = request('bank');
		//到账时间
		$log['comein_time'] = strtotime(request('comein_time'));
		//如果是未到期续费则为商家本身的代理金额，否则为新定的代理金额
		$log['old_proxy_money']=$result['per_money'];
		$log['contract_num']=$contract_num;
		$log['contract_year']=$year?$year:$result['contract_year'];
		$log['bankpic'] = strstr($image2['folder'].$image2['name'], '/data');
		$admin_obj->_add_adminlogs_money($id,1,$money_tmp,$log);

		location_msg(L(2801, array('money'=>$money_tmp)));
	}

	/**
	* 代理商充值
	* @author zhufu 2013-08-22
	*
	*/
	function admin_act_rechange(){
		global $admin_obj,$_site,$admin_finance_obj;
		//修改的 账号id
		$id = request('id', false, true);
		$comein_time = strtotime(request('comein_time'));   //到账时间
		$bank = request('bank');    //到账银行
		$song = request('song', false, true);   //是否为赠送
		$notice = request('notice');    //备注
		if(!$id){
			location_msg("没有账户id");
		}
		//本次输入的实际金额
		$money_tmp = request('money', false, true);
		if($money_tmp<1){
			//续费的金额不能小于 1
			location_msg("金额输入不能小于1");
		}
		//修改权限组
		$group = request('group', false, true);
		//根据id获取修改用户的信息
		$result = admin_fun_find_admin($id);
		//网银截图
		$save_path = '/data/upload/pic/'.date('Y/m/d/');
		$image2 = $_site->_file()->upload_file('bankpic' , $_site->_root().$save_path);
		if(!$image2 || is_null_str($image2['folder']) || is_null_str($image2['name'])){
			location_msg('网银截图上传失败');
		}
		$bankpic = $save_path . $image2['name'];
		$money = $result['money'] + $money_tmp;
		//$data = compact('id','group','money');
		$data = compact('id','money');  //充值的时候将代理商-7修改为了-2
		//处理代理费没有结清的问题
		switch($song){
			case 1:
				//赠送
				$r_chong = $admin_finance_obj->_rechange_chong($result['id'], $money_tmp, $bank, $comein_time,$notice,'',1);
				if(!$r_chong){
					//回滚
				}
				break;
			case 2:
				//代理费
				$data['debt_money'] = $result['debt_money'] - $money_tmp;
				if($data['debt_money'] <= 0){
					$data['debt_money'] = 0;
				}
				$r_chong = $admin_finance_obj->_rechange_chong($result['id'], $money_tmp, $bank, $comein_time,$notice);
				if(!$r_chong){
					//回滚
				}
				break;
			default:
				$r_chong = $admin_finance_obj->_rechange_chong($result['id'], $money_tmp, $bank, $comein_time,$notice);
				if(!$r_chong){
					//回滚
				}
		}

		if(!$admin_obj->update_admin($data)){
			location_msg('修改失败');
		}
		$data_logs = array('comein_time'=>time(),'bank'=>$bank,'bankpic'=>$bankpic);
		$admin_obj->_add_adminlogs_money($result['id'], 3, $money_tmp, $data_logs);
		location_msg(L('2802', array('money'=>$money_tmp)));
	}


	/**
	* 密码修改
	*
	*/
	function admin_act_pwd_edit(){
		global $admin_obj;
		$password = request('password');    //
		$repwd = request('repwd');          //
		$old_pwd = request('old_pwd');      //

		if(!$password){
			location_msg('密码不能为空');
		}
		//密码不能是纯数字或字母
		if(!check_password($password)){
			location_msg(L('1011'));
		}
		if($password != $repwd){
			location_msg('再次输入的密码不一样');
		}
		//得到用户信息
		if(!$admin_obj->_pwd_edit($password, $old_pwd)){
			location_msg('密码修改失败');
		}
		location_msg('密码修改成功');
	}


	/**
	* 修改 管理员的 信息
	*
	* @author  yufu 2012-8-6 upate by zhufu
	*/
	function admin_act_update_admin_self(){
		global $admin_obj;

		//修改的 账号id
		$id = $admin_obj->_id();
		//修改的姓名
		$name = request('name');
		//修改的电话
		$phone = request('phone', false, true);
		//修改的状态
		$email = request('email', false, false,true);

		if(!$id || !$name || !$phone){
			location_msg('修改失败');
		}

		$data = compact('id','name','phone','email');

		if(!$admin_obj->update_admin($data)){
			location_msg('修改失败');
		}
		location_msg('修改成功');
	}



	/**
	* 添加权限分组
	*
	* @author  yufu 2012-7-20
	*/
	function admin_act_add_group(){
		global $admin_obj;
		// 权限分组名称
		$content = request('content');
		//type_module 该分组包含的权限组
		$type_module = request('type_module');

		$str = '';
		//循环 传过来的数组 用逗号隔开权限
		foreach($type_module as $k=>$v){
			$str .= $k.',';
			if($v){
				foreach($v as $key =>$val){
					$str .= $val.',';
				}
			}
		}

		$type_module = trim($str,',');
		//$type_module 数组处理  以逗号形式隔开
		$data = compact('content','type_module');
		if(!$admin_obj->add_group($data)){
			location_msg('添加失败');
		}
		location_msg('成功');
	}

	/**
	* 修改权限分组
	*
	* @author  yufu 2012-7-20
	*/
	function admin_act_update_group(){
		global $admin_obj;
		//id 权限的id
		$id =request('id', false, true);

		// 权限分组名称
		$content = request('content');

		//type_module 该分组包含的权限组
		$type_module = request('rs');

		$type_module=$type_module?implode(',',$type_module):'';

		$data = compact('id','content','type_module');

		if(!$id){
			if(!$admin_obj->add_group($data)){
				location_msg('添加失败');
			}
			location_msg('添加成功');
		}

		if(!$admin_obj->update_group($data)){
			location_msg('修改失败');
		}
		location_msg('修改成功');

	}

	/**
	* 添加权限 对权限的下一级添加
	*
	* @author  yufu 2012-7-20 upate by zhufu
	*/
	function admin_act_add_module(){
		global $admin_obj,$_site;

		//这条记录的id
		$id = request('id',false, true);
		//内容 标题
		$content = request('content');
		//功能所在文件
		$file = request('file');
		//parent_id  上一级id
		$parent_id = request('parent_id', false, true, false, 0);
		if(!$content){
			echo_json(array('msgs'=>'请输入要添加的内容','state'=>false));
			location_msg('请输入要添加的内容');
		}
		$sort = request('sort', false, true, false, 0); //排序
		$state = request('state',false,true,false,0);//状态
		$data = compact('content', 'file', 'parent_id', 'sort','state');

		if($id){
			//有id,是修改
			$result = $admin_obj->update_module($id, $data);
			if(!$result){
				echo_json(array('msgs'=>'修改失败','state'=>false));
				location_msg('修改失败');
			}
			echo_json(array('msgs'=>'修改成功','state'=>true));
			location_msg('修改成功', '/admin/admin_module_add?id='.$result);
		}else{
			$result = $admin_obj->add_module($data);
		}

		if(!$result){
			echo_json(array('msgs'=>'添加失败','state'=>false));
			location_msg('添加失败');
		}
		echo_json(array('msgs'=>'添加成功','state'=>true));
		location_msg('添加成功', '/admin/admin_module_add?id='.$result);
	}


	/**
	* 修改管理的登陆状态   0为禁用账户 1为启用账户
	*
	* @author  yufu 2012-7-19
	*/
	function admin_act_update_state(){
		global $admin_obj;
		//要修改的id
		$id = request('id');
		//要修改的状态
		$state = request('state', false, true);
		if(!$id){
			location_msg('修改失败');
		}
		$data = compact('id', 'state');
		if(is_array($id)){
			foreach($id as $v){
				$data['id'] = $v;
				$data['state'] = $state;
				if(!$admin_obj->update_admin($data)){
					location_msg('修改失败');
				}
			}
		}else{
			//修改失败
			if(!$admin_obj->update_admin($data)){
				location_msg('修改失败');
			}
		}

		location_msg('修改成功');
	}

	/**
	* 注销用户  用户退出
	*
	* @author  yufu 2012-7-23
	*/
	function admin_act_quit(){
		global $admin_obj;

		$type=request('type');				
		$url='/admin/login';
		$admin_obj->out_quit();		
		if('wap'==$type){
			del_cookie('admin');
			del_cookie('admin_info');
			header('location: /mobile/login');exit();
		}		
		
		if($admin_obj->out_quit()){					
			location_msg(L('1402'),$url);
		}
		location_msg(L('1402'),$url);
	}


	/**
	* 登录验证码
	* @author   yufu   2012-7-30
	*
	*/
	function admin_act_code(){
		global $_site;
		$_site->_file()->image_auth_code('admincode', 4, 1, 60, 25, 5);
	}


	/**
	* 检查用户账号唯一性
	* @author limin  2013-8-6 PM 13:11:00
	*
	*/
	function admin_act_account_check(){
		global $admin_obj;
		$account = request('param');
		if(!$account){
			exit(L('1223'));
		}
		$r = $admin_obj->out_info_account($account);
		if($r){
			exit(L('1213'));  //账号已存在
		}
		echo 'y';
	}

	/**
	* 检查手机号的唯一性
	* @author limin  2013-8-6 PM 13:11:00
	*
	*/
	function admin_act_phone_check(){
		global $admin_obj;
		$phone = request('param');
		if(!$phone){
			exit(L('1223'));
		}
		$r = $admin_obj->out_info_phone($phone);
		if($r){
			exit(L('1214'));  //手机号已存在
		}
		echo 'y';
	}

	//Function
	/*+-------------------------------------------------------------------------+*/

	/**
	*  查询用户的cookie
	* @author  yufu 2012-7-19
	*
	*
	*
	*/
	function admin_fun_cookie(){
		global $admin_obj;
		return $admin_obj->out_cookie();
	}

	/**
	* 通过id 查询该分组的权限
	* @author  yufu 2012-7-19
	* @param int $id  权限组的id
	*/
	function admin_fun_find_group($id){
		global $admin_obj;
		if(!$id){
			return false;
		}

		return $admin_obj->out_find_group($id);
	}
	/**
	* 获得全部 的用户组
	*
	* @author  yufu 2012-7-20
	*/
	function admin_fun_find_group_list($data=array(),$page=1,$pagesize=10){
		global $admin_obj;
		return $admin_obj->out_find_group_list($data,$page=1,$pagesize=10);
	}

	/**
	*  获得权限 分组
	* @author  yufu 2012-7-19
	* @param string $arr_id  权限的数据集 用逗号隔开
	*/
	function admin_fun_find_module($arr_id){
		global $admin_obj;
		$supper_admin = $admin_obj->out_cookie();
		if($supper_admin['id']!='1' && $supper_admin['group']!=6){

			if(!$arr_id){
				return false;
			}
		}

		return $admin_obj->out_find_module($arr_id);
	}

	/**
	* 根据上级id，得到下级的权限列表
	* @author <zhufu159239@163.com> 2012-08-06 15:20:20
	*
	* @param int $pid   上级id
	*/
	function admin_fun_module_child($pid=0){
		global $admin_obj;
		$list = $admin_obj->out_module_list_pid($pid);
		return $list;
	}
	/**
	* 获得所有的节点moduel
	* @author xiezhihui 2014-5-10 09:06:32
	*
	*/
	function admin_fun_module_all(){
		global $admin_obj, $_site;
		return $admin_obj->out_find_module_list();
	}

	//返回多维数组
	function admin_fun_get_child_array($cate,$pid=0,$leave=1){
		if(!$cate) return false;
		$arr = array();
		foreach ($cate as $v){
			if($pid==$v['parent_id']){
				/*$v['child'] = get_child_array($cate,$v['id']);
				$arr[]=$v;*/
				$v['leave']=$leave;
				$arr[$v['id']]=$v;

				$arr[$v['id']]['child'] = admin_fun_get_child_array($cate,$v['id'],$leave+1);

			}
		}
		return $arr;
	}

	/**
	* 得到分层的后台功能列表
	* @author <zhufu159239@163.com> 2012-08-09 14:26:27
	*
	*/
	function admin_fun_module_all_level(){
		global $admin_obj, $_site;
		$filename = $_site->data_config['cache_key']['admin_module_all_level'];
		$cache = $admin_obj->memcache($filename);
		if($cache){
			return $cache;
		}
		$list = $admin_obj->out_find_module_list();
		if(!$list){
			return false;
		}
		$result = array();
		foreach($list as $k=>$v){
			if($v['parent_id'] == 0){
				$result[$v['id']] = $v;
				continue;   //一级先不动，直接写入 $result
			}
			if($result[$v['parent_id']]['parent_id'] == 0){
				//上级是顶级,先不动
				$result[$v['id']] = $v;
				continue;
			}
			if(!$result[$v['parent_id']]['child']){
				$result[$v['parent_id']]['child'] = array();
			}
			$result[$v['parent_id']]['child'][$v['id']] = $v;
		}
		//产生第一和二级
		$tmp = array();
		foreach($result as $k=>$v){
			if($v['parent_id'] == 0){
				//是一级
				$tmp[$v['id']] = $v;
				continue;
			}
			if(!$tmp[$v['parent_id']]['child']){
				$tmp[$v['parent_id']]['child'] = array();
			}
			$tmp[$v['parent_id']]['child'][$v['id']] = $v;
		}
		//写入文件缓存
		$admin_obj->memcache($filename, $tmp, 600);
		return $tmp;
	}

	/**
	* 获得全部 的权限
	*
	* @author  yufu 2012-7-20 update by zhufu
	*
	*/
	function admin_fun_find_module_list(){
		global $admin_obj;
		return $admin_obj->out_find_module_list();
	}

	/**
	* 通过id  查询该管理员的信息
	*
	*  @author   yufu   2012-7-21 upate by zhufu
	* @param int $id  管理员id
	*/
	function admin_fun_find_admin($id){
		global $admin_obj;
		if(!$id){
			return false;
		}

		return $admin_obj->out_find_admin($id);
	}


	/**
	* 查询所有管理员 列表
	*
	* @author  yufu 2012-7-21 upate by zhufu
	*
	* @param   int @groupid 所属组id
	* @param   int  $page  当前页
	* @param   int $search      搜索条件
	* @param   int $pagesize   每页显示数量
	*/
	function admin_fun_find_admin_list($groupid, $page=1, $search=array(), $pagesize=10){
		global $admin_obj;
		$search["account"] = addslashes($search["account"]);
		$search["account"] = str_replace("_","\_",$search["account"]);
		$search["account"] = str_replace("%","\%",$search["account"]);
		if(!$page || !$pagesize || !$groupid){
			return false;
		}
		return $admin_obj->out_find_admin_list($groupid, $page, $search, $pagesize);
	}

	/**
	* 获得管理员列表
	* @author limin 2013-9-21 AM 9:38:00
	* @param  array  $data 搜索数组
	*/
	function admin_fun_list($data,$page=1,$pagesize=10){
		global $admin_obj;
		if(!is_array($data)){
			return false;
		}
		return $admin_obj->_list($data,$page,$pagesize);
	}

	/**
	* 获得管理员列表
	* @author xiezhihui 2013-12-27 AM 15:38:00
	* @param  array  $data 搜索数组
	*/
	function admin_fun_list_by_proxy($data,$page=1,$pagesize=10){
		global $admin_obj;
		if(!$data){
			return false;
		}
		return $admin_obj->_list_by_proxy($data,$page,$pagesize);
	}

	/**
	* 当前数据库大小
	*
	* @author zhouqi 2012-9-11 PM 04:42:58
	*/
	function admin_fun_db_size() {
		global $admin_obj;
		return $admin_obj->_database_size();
	}

	/**
	* 查看代理商缴费记录
	* @author limin 2013-8-3 PM 12:44:00
	* @param  array $where 搜索数组
	* @param  int $aid  代理商ID
	* @param  int $page  当前页
	* @param  int $pagesize  每页显示条数
	*/
	function admin_fun_adminlog_money($aid,$where='',$page=1,$pagesize=10){
		global $admin_obj;
		if(!$aid){
			return false;
		}
		if($where['end_time']){
			$where['end_time'] += 86400;
		}
		$list=$admin_obj->_list_adminlogs_money($aid,$where,$page,$pagesize);
		return $list;
	}



	/**
	* 根据账号得到管理员信息
	* @author limin 2013-9-26  AM 11:41:00
	* @param string $account
	*/
	function admin_fun_info_account($account){
		global $admin_obj;
		if(!$account){
			return false;
		}
		return $admin_obj->out_info_account($account);
	}

	/**
	* 代理商消费日志类型说明
	* @author zhufu 2013-09-19
	*
	*/
	function admin_fun_money_typemap(){
		return array(1=>'代理费日志', 2=>'开通小区主', 3=>'充值');
	}


	/**
	 * 查询充值记录
	 * @param unknown $id
	 * @return boolean
	 */
	function admin_fun_money_log($id){
		global $admin_obj;
		if(!$id){
			return false;
		}		
		$data['uid']=$id;
		return $admin_obj->money_log_search($data,1,100);
	}
	
	
?>
